Skip to content

process: update metamodel safety analysis#104

Merged
MaximilianSoerenPollak merged 21 commits into
eclipse-score:mainfrom
qorix-group:vohae_saf_analysis
Jul 9, 2025
Merged

process: update metamodel safety analysis#104
MaximilianSoerenPollak merged 21 commits into
eclipse-score:mainfrom
qorix-group:vohae_saf_analysis

Conversation

@PandaeDo

Copy link
Copy Markdown
Contributor

Ref: closes #102

@github-actions

github-actions Bot commented Jun 26, 2025

Copy link
Copy Markdown

License Check Results

🚀 The license check job ran with the Bazel command:

bazel run //src:license-check

Status: ⚠️ Needs Review

Click to expand output
[License Check Output]
Extracting Bazel installation...
Starting local Bazel server and connecting to it...
INFO: Invocation ID: 89c447c1-b33b-4590-bf5b-65ecd2b47279
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Loading: 
Loading: 0 packages loaded
Loading: 0 packages loaded
    currently loading: src
Loading: 0 packages loaded
    currently loading: src
Analyzing: target //src:license-check (1 packages loaded, 0 targets configured)
Analyzing: target //src:license-check (1 packages loaded, 0 targets configured)

Analyzing: target //src:license-check (98 packages loaded, 10 targets configured)

Analyzing: target //src:license-check (104 packages loaded, 10 targets configured)

Analyzing: target //src:license-check (147 packages loaded, 1752 targets configured)

Analyzing: target //src:license-check (153 packages loaded, 2652 targets configured)

Analyzing: target //src:license-check (158 packages loaded, 2687 targets configured)

Analyzing: target //src:license-check (162 packages loaded, 4820 targets configured)

INFO: Analyzed target //src:license-check (163 packages loaded, 4946 targets configured).
[12 / 13] [Prepa] Generating Dash formatted dependency file ...
INFO: Found 1 target...
Target //src:license.check.license_check up-to-date:
  bazel-bin/src/license.check.license_check
  bazel-bin/src/license.check.license_check.jar
INFO: Elapsed time: 19.785s, Critical Path: 0.38s
INFO: 13 processes: 4 disk cache hit, 9 internal.
INFO: Build completed successfully, 13 total actions
INFO: Running command line: bazel-bin/src/license.check.license_check src/formatted.txt -review -project automotive.score -repo https://github.com/eclipse-score/docs-as-code -token otyhZ4eaRYK1tKLNNF-Y
[main] INFO Querying Eclipse Foundation for license data for 83 items.
[main] INFO Found 58 items.
[main] INFO Querying ClearlyDefined for license data for 25 items.
[main] ERROR Error response from ClearlyDefined 429

@github-actions

Copy link
Copy Markdown

The created documentation from the pull request is available at: docu-html

@MaximilianSoerenPollak

Copy link
Copy Markdown
Contributor

@PandaeDo is this ready for review or still in draft?

Comment thread src/extensions/score_metamodel/metamodel.yaml Outdated
@PandaeDo

Copy link
Copy Markdown
Contributor Author

@MaximilianSoerenPollak The draft shall show that I still work on it. In aspect to that our remarks are also warm welcome.

@MaximilianSoerenPollak MaximilianSoerenPollak left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some questions & some changes needed.

Any questions let me know.

Comment thread src/extensions/score_metamodel/metamodel.yaml Outdated
Comment thread src/extensions/score_metamodel/metamodel.yaml Outdated
Comment thread src/extensions/score_metamodel/metamodel.yaml Outdated
Comment thread src/extensions/score_metamodel/metamodel.yaml Outdated
Comment thread src/extensions/score_metamodel/metamodel.yaml Outdated
Comment thread src/extensions/score_metamodel/metamodel.yaml Outdated
Comment thread src/extensions/score_metamodel/metamodel.yaml Outdated
Comment thread src/extensions/score_metamodel/metamodel.yaml Outdated
Comment thread src/extensions/score_metamodel/metamodel.yaml Outdated
@MaximilianSoerenPollak

Copy link
Copy Markdown
Contributor

If those things are changed. Here are the resulting errors:

folder_templates/features/feature_name/requirements/index.rst:48: WARNING: feat_req__feature_name__some_title: parent need stkh_req__requirements__template does not fulfill condition {'or': ['safety == QM', 'safety == ASIL_B']}. [score_metamodel]
folder_templates/modules/module_name/component_name/docs/requirements/index.rst:36: WARNING: comp_req__component_name__some_title: parent need feat_req__feature_name__some_title does not fulfill condition {'or': ['safety == QM', 'safety == ASIL_B']}. [score_metamodel]

These then also need to be fixed I think. Though that should be us. I'm a bit unsure why it checks 'EXTERNAL' needs here.. that's a bit worrysome.

Comment thread src/extensions/score_metamodel/tests/rst/graph/test_metamodel_graph.rst Outdated
@PandaeDo PandaeDo marked this pull request as ready for review July 4, 2025 13:09

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just hint, in this case we would need to check e.g. ASIL B -> QM(B) or ASIL A(B)

masc2023
masc2023 previously approved these changes Jul 4, 2025

@masc2023 masc2023 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine for now to test, but one comment, in current release we want only ASIL B, not ASIL D, so how can we find ASIL D requirements automatically and let them not be in the code. May needs some discussion

@MaximilianSoerenPollak

Copy link
Copy Markdown
Contributor

Fine for now to test, but one comment, in current release we want only ASIL B, not ASIL D, so how can we find ASIL D requirements automatically and let them not be in the code. May needs some discussion

That should be an easy check, just checking if safety is ASIL_D in an requirements.

@aschemmel-tech aschemmel-tech left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See inline comments

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be "failure_mode"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was changed to be consitent accross the types if I remember correctly?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aligned to the actual PR it's "fault_models". ](eclipse-score/process_description#54)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok, consistent is nice, but according to #54 above the name of the attribute and the content to be written is completely inconsistent: ":violation_cause: "description of failure effect of the fault model on the element"" - the attribute asks for the "cause" and the description is about the "effect"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess we discuss this then tomorrow?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should start with prefix

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected it

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should start with prefix

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^feat_plat_saf_dfa__[0-9a-z_]*$

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected it

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should start with prefix

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected it

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should start with prefix

@PandaeDo PandaeDo Jul 7, 2025

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected it

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be "failure_mode"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be "failure_effect"

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aligned to the actual PR it's "fault_models". ](eclipse-score/process_description#54)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see above

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be "failure_effect"

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After discussion I changed it to violation. If needed we shall discuss it in our round.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the only occurence of "argument" - in the process templates it is in every DFA and FMEA. I am not sure if we discussed to remove this and put the in the description of the "need".

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Argument should be removed as an attribute. It was decided the argument is inside the 'conent

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I missed this one. We deleted it in the metamodel and add a note into the templates in the actual PR that the argument is inside the contend and therefore its mandatory.

@MaximilianSoerenPollak MaximilianSoerenPollak left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall great work, thank you.

Some small comments, requests & questions from my side.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^feat_plat_saf_dfa__[0-9a-z_]*$

Comment on lines 513 to 520

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In this and any of the other new need types.

Are ALL mentioned links & options/attributes mandatory ? Or are some optional?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed the mitigation_issue to optional_links

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was changed to be consitent accross the types if I remember correctly?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Argument should be removed as an attribute. It was decided the argument is inside the 'conent

Comment thread src/extensions/score_metamodel/tests/rst/graph/test_metamodel_graph.rst Outdated
Comment thread src/extensions/score_metamodel/tests/rst/graph/test_metamodel_graph.rst Outdated
Comment thread src/extensions/score_metamodel/tests/rst/options/test_options_options.rst Outdated
Ref: closes #102

@aschemmel-tech aschemmel-tech left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to discuss if we want "failure effect" documented at least for FMEA

@MaximilianSoerenPollak MaximilianSoerenPollak left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just one more question from me, but I think this is ok.

From my side we can bring this in, depending on the verifies naming status?

Comment thread src/extensions/score_metamodel/BUILD Outdated
Comment on lines 35 to 38

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nitpick:

Should be removed.

This can be done in next PR.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I saw in the process that 'mitigates' can be left empty.
If this is the case, then this should be a optional_link not madatory.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The mitigation link can be open as long as there is no mitigation (gd_guidl__safety_analysis). To finish a safety analysis a sufficient and linked mitigation is needed.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That then means though that this should be optional?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess we discuss this then tomorrow?

@aschemmel-tech aschemmel-tech left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok with merge to enable piloting

aschemmel-tech
aschemmel-tech previously approved these changes Jul 9, 2025

@aschemmel-tech aschemmel-tech left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine for me to merge.

PandaeDo added 3 commits July 9, 2025 10:27
Signed-off-by: Volker Häussler <volker.haeussler@qorix.ai>

@MaximilianSoerenPollak MaximilianSoerenPollak left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@MaximilianSoerenPollak MaximilianSoerenPollak merged commit 2b10cd4 into eclipse-score:main Jul 9, 2025
7 checks passed
arnoox pushed a commit to arnoox/score-docs-as-code that referenced this pull request Feb 20, 2026
* process: update metamodel safety analysis
* process: graph_check ASIL update
* process: update safety analysis templates
* process: update graph check
* process: add test cases requirements
* process: add checks safety analysis
* process: delete ASIL_D option. Add testcases
* process: fix test required options
* Update ASIL_D check
* increase version

Ref: closes eclipse-score#102

---------

Signed-off-by: Volker Häussler <volker.haeussler@qorix.ai>
Co-authored-by: Sven Bachmann <sven.bachmann.ext@qorix.ai>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

Improvement: Add Safety Analysis (FMEA and DFA) to metamodel

6 participants